<?php

	if(defined('PARAMETRO_1') && constant('PARAMETRO_1') == 'centraldenoticias'){
		
		if($_POST){
			
			if(isset($_POST['btnInserirNoticia'])){
				redireciona(array('administracao', 'centraldenoticias', 'inserir'));
			}
			
			if(isset($_POST['btnSalvarNoticia'])){
				$strTitulo    = pegaPost('strTitulo');
				$strSubTitulo = pegaPost('strSubTitulo');
				$fileFoto     = $_FILES['fileFoto'];
				$strTexto     = configuraHTMLFormatado(pegaPost('strTexto'));
				$idUsuario    = $this->getUsuario()->getIdUsuario();
				$exibir       = "principal";
				
				if(Noticia::inserir($idUsuario, $strTitulo, $strSubTitulo, $fileFoto, $strTexto, $exibir)){
					redireciona(array('administracao','centraldenoticias'));					
				}else{
					adicionaMensagem(texto('MENSAGEM_ERRO_NOTICIA_NAO_FOI_INSERIDA'),'erro');
				}	
			}
			
			if(isset($_POST['btnExcluirNoticia'])){
				foreach($_POST as $chave => $post) {
					if (preg_match('/^checkNoticia[0-9]+$/', $chave)) {
						Noticia::apagar(str_replace('checkNoticia', '', $chave));
					}
				}
				redireciona(array('administracao','centraldenoticias'));
			}
			
			$this->getSmarty()->assign('TEXTO_NAVEGACAO',texto('AREA_ADMINISTRACAO') . ' > ' . texto('AREA_CENTRAL_DE_NOTICIAS'));
			$this->getSmarty()->assign('TITULO_BARRA_NAVEGADOR', texto('TITULO_BARRA_NAVEGADOR', array(texto('AREA_CENTRAL_DE_NOTICIAS') . ' - ' . texto('AREA_ADMINISTRACAO'))));
			
			$this->exibir('administracaocentraldenoticias');
						
		}else if( ( !defined('PARAMETRO_2') ) || ( defined('PARAMETRO_2') && constant('PARAMETRO_2') != 'inserir' && !is_numeric(constant('PARAMETRO_2'))) ){
			
			if(defined('PARAMETRO_2'))
				$ordenacaoAtual = constant('PARAMETRO_2');
			else
				$ordenacaoAtual = 'data';
				
			if(defined('PARAMETRO_3'))
				$ordemAtual = constant('PARAMETRO_3');
			else
				$ordemAtual = 'desc';
				
			$ordenacaoAtual	=	str_replace('ordena', '', $ordenacaoAtual);
			
			//ordenacaoAtual é sempre data ou titulo, porem o campo no banco de dados é dataHora
			if($ordenacaoAtual == 'data'){
				$ordenaPeloCampo = 'dataHora';
			}else{
				$ordenaPeloCampo = 'titulo';
			}
			
			if($resultado = Noticia::getNoticias('principal', null, null, false, $ordenaPeloCampo , $ordemAtual)){
				$listaNoticias = $resultado['listaResultados'];

				for($i = 0; $i < sizeof($listaNoticias); $i++){
					$listaNoticias[$i]['link'] = montalink(array('administracao','centraldenoticias',$listaNoticias[$i]['idNoticia']));
				}

				$this->getSmarty()->assign('ordenacaoAtual', $ordenacaoAtual);
				$this->getSmarty()->assign('ordemAtual', $ordemAtual);
				$this->getSmarty()->assign('listaNoticias', $listaNoticias);
				
				$this->getSmarty()->assign('LISTA_TITULO_NOTICIAS_HREF', montalink(array('administracao','centraldenoticias', 'ordenatitulo', $ordenacaoAtual != 'titulo' ? 'asc' : ($ordemAtual == 'desc' ? 'asc' : 'desc'))));
				$this->getSmarty()->assign('LISTA_TITULO_NOTICIAS_TITLE', texto('mudar'));
				$this->getSmarty()->assign('LISTA_TITULO_DATA_HREF', montalink(array('administracao','centraldenoticias', 'ordenadata', $ordenacaoAtual != 'data' ? 'asc' : ($ordemAtual == 'desc' ? 'asc' : 'desc'))));
				$this->getSmarty()->assign('LISTA_TITULO_DATA_TITLE', texto('mudar'));	
			}
			
			$this->getSmarty()->assign('TEXTO_NAVEGACAO',texto('AREA_ADMINISTRACAO') . ' > ' . texto('AREA_CENTRAL_DE_NOTICIAS'));
			$this->getSmarty()->assign('TITULO_BARRA_NAVEGADOR', texto('TITULO_BARRA_NAVEGADOR', array(texto('AREA_CENTRAL_DE_NOTICIAS') . ' - ' . texto('AREA_ADMINISTRACAO'))));
				
				
			$this->exibir('administracaocentraldenoticias');
			
		}else{
				
			if(constant('PARAMETRO_2') == 'inserir'){
			
				$this->getSmarty()->assign('inserirNoticia',true);
				
				$this->getSmarty()->assign('TEXTO_NAVEGACAO',texto('AREA_ADMINISTRACAO') . ' > ' . texto('AREA_CENTRAL_DE_NOTICIAS'));
				$this->getSmarty()->assign('TITULO_BARRA_NAVEGADOR', texto('TITULO_BARRA_NAVEGADOR', array(texto('AREA_CENTRAL_DE_NOTICIAS') . ' - ' . texto('AREA_ADMINISTRACAO'))));
				
				$this->exibir('administracaocentraldenoticias');
			
			}else if(is_numeric(constant('PARAMETRO_2'))){
				
				$idNoticia = constant('PARAMETRO_2');
				
				$strQuery = "SELECT idNoticia FROM noticias WHERE idNoticia=".$idNoticia;
				
				if(sizeof($resultado = BancoDados::query($strQuery)) > 0){
					
					$noticia   = new Noticia($idNoticia);
							
					$enter  = array("\r\n", "\n", "\r");
		            $br	    = '<br />';
					
					$arrayDadosAutor = Usuario::getUsuarioPorId($noticia->getIdAutor());
					$autor	         = $arrayDadosAutor['listaResultados'][0]['nome'];
					
					$this->getSmarty()->assign('autor',nomeSobrenome($autor));
					$this->getSmarty()->assign('texto', str_replace($enter, $br, $noticia->getTexto()));
					$this->getSmarty()->assign('data',getDataFormatada($noticia->getDataHora()));
					$this->getSmarty()->assign('hora',getHoraFormatada($noticia->getDataHora()));
					$this->getSmarty()->assign('titulo',$noticia->getTitulo());		
					$this->getSmarty()->assign('horaAutor',texto('TEXTO_HORA_AUTOR_NOTICIA',array(getHoraFormatada($noticia->getDataHora()),nomeSobrenome($autor))));		
					
					$this->getSmarty()->assign('TEXTO_NAVEGACAO',texto('AREA_ADMINISTRACAO') . ' > ' . texto('AREA_CENTRAL_DE_NOTICIAS'));
					$this->getSmarty()->assign('TITULO_BARRA_NAVEGADOR', texto('TITULO_BARRA_NAVEGADOR', array(texto('AREA_CENTRAL_DE_NOTICIAS') . ' - ' . texto('AREA_ADMINISTRACAO'))));
					
					$this->exibir('noticia');
				
				}else{
					$this->getSmarty()->assign('listaNoticias', array());
					$this->getSmarty()->assign('TEXTO_NAVEGACAO',texto('AREA_ADMINISTRACAO') . ' > ' . texto('AREA_CENTRAL_DE_NOTICIAS'));
					$this->getSmarty()->assign('TITULO_BARRA_NAVEGADOR', texto('TITULO_BARRA_NAVEGADOR', array(texto('AREA_CENTRAL_DE_NOTICIAS') . ' - ' . texto('AREA_ADMINISTRACAO'))));
					
					$this->exibir('administracaocentraldenoticias');	
				}
			}								
			
		}						

	}else{
		redireciona(array('404'));
	}
?>